@TECHREPORT{Martini96elementsof,
    author = {Alfio Martini},
    title = {Elements of Basic Category Theory},
    institution = {},
    year = {1996}
}

@INPROCEEDINGS{Wadler92comprehendingmonads,
    author = {Philip Wadler},
    title = {Comprehending Monads},
    booktitle = {Mathematical Structures in Computer Science},
    year = {1992},
    pages = {61--78}
}

@article{Hoare78CSP,
 author = {Hoare, C. A. R.},
 title = {Communicating sequential processes},
 journal = {Commun. ACM},
 volume = {21},
 number = {8},
 year = {1978},
 issn = {0001-0782},
 pages = {666--677},
 doi = {http://doi.acm.org/10.1145/359576.359585},
 publisher = {ACM},
 address = {New York, NY, USA},
 }

@misc{typeclassopedia,
  author = {Brent Yorgey},
  title = {{The Monad Reader Issue 13: The Typeclassopedia}},
  url = {www.haskell.org/sitewiki/images/8/85/TMR-Issue13.pdf}
}


@article{folding@home,
    abstract = {For decades, researchers have been applying computer simulation to address
problems in biology. However, many of these "grand challenges" in computational
biology, such as simulating how proteins fold, remained unsolved due to their
great complexity. Indeed, even to simulate the fastest folding protein would
require decades on the fastest modern CPUs. Here, we review novel methods to
fundamentally speed such previously intractable problems using a new
computational paradigm: distributed computing. By efficiently harnessing tens
of thousands of computers throughout the world, we have been able to break
previous computational barriers. However, distributed computing brings new
challenges, such as how to efficiently divide a complex calculation of many PCs
that are connected by relatively slow networking. Moreover, even if the
challenge of accurately reproducing reality can be conquered, a new challenge
emerges: how can we take the results of these simulations (typically tens to
hundreds of gigabytes of raw data) and gain some insight into the questions at
hand. This challenge of the analysis of the sea of data resulting from
large-scale simulation will likely remain for decades to come.},
    archivePrefix = {arXiv},
    author = {Larson, Stefan M. and Snow, Christopher D. and Shirts, Michael and Pande, Vijay S.},
    citeulike-article-id = {3860118},
    citeulike-linkout-0 = {http://arxiv.org/abs/0901.0866},
    citeulike-linkout-1 = {http://arxiv.org/pdf/0901.0866},
    citeulike-linkout-2 = {http://adsabs.harvard.edu/cgi-bin/nph-bib_query?bibcode=2009arXiv0901.0866L},
    eprint = {0901.0866},
    keywords = {bioinformatics, cs, protein, review},
    month = {Jan},
    posted-at = {2009-01-08 14:16:47},
    priority = {2},
    title = {{Folding@Home and Genome@Home: Using distributed computing to tackle previously intractable problems in computational biology}},
    url = {http://arxiv.org/abs/0901.0866},
    year = {2009}
}


@inproceedings{MapReduce,
 author = {Dean, Jeffrey and Ghemawat, Sanjay},
 title = {{MapReduce: simplified data processing on large clusters}},
 booktitle = {OSDI'04: Proceedings of the 6th conference on Symposium on Opearting Systems Design \& Implementation},
 year = {2004},
 pages = {10--10},
 location = {San Francisco, CA},
 publisher = {USENIX Association},
 address = {Berkeley, CA, USA}
 }


@manual{hadoop,
    author = {Borthakur, Dhruba},
    citeulike-article-id = {3850975},
    comment = {Free implementation of the design of Google File System and MapReduce.},
    keywords = {distributed, gfs, hadoop, mapreduce, storage},
    organization = {The Apache Software Foundation},
    posted-at = {2009-01-05 16:27:05},
    priority = {1},
    title = {The Hadoop Distributed File System: Architecture and Design},
    year = {2007}
}


@inproceedings{ReInForM,
   author={Deb, Bhatnagar, Nath},
   title={ReInForM: Reliable information forwarding using multiple paths in sensor networks},
   booktitle={28th Annual IEEE conference on local computer networks},
   location={Bonn, Germany},
   tear={2003}
}


@ARTICLE{hughes-arrows,
    author = {John Hughes},
    title = {Generalising Monads to Arrows},
    journal = {Science of Computer Programming},
    year = {1998},
    volume = {37},
    pages = {67--111}
}